package bairui.international.model.domain.jpa;

import com.lianjing.sh.model.uml.model.data.TBSuper_BaseIDAndTimeAndOrderValue;

/**
 *
 * (系统设置)TB_SystemConfig
 *
 * @说明
 * <pre>

 * </pre>
 *
 * @see Help_TB_SystemConfig#inheritance() 继承体系信息
 *
 */
@org.hibernate.annotations.DynamicInsert
@org.hibernate.annotations.DynamicUpdate

@javax.persistence.Entity(name="t_systemConfig")
@com.lianjing.sh.processing.info.annotation.GenerateInfoModel
@SuppressWarnings("serial")
@com.lianjing.sh.model.common.annotation.Comment("系统设置")
@com.lianjing.sh.processing.info.annotation.InfoComment("系统设置")
public class TB_SystemConfig
 extends TBSuper_BaseIDAndTimeAndOrderValue
 implements 
	com.lianjing.sh.model.common.stardard.TableModel<Long>,
	java.io.Serializable

{

	
	
	/**
	 * 必须属性赋值接口
	 */
	public static interface MustProperties{
		/** 一级分成比例 */
		public Double getFirstLevelDivideRatio();
		/** 一级再分成比例 */
		public Double getFirstLevelSubDivideRatio();
		/** 二级分成比例 */
		public Double getSecondLevelDivideRatio();
		/** 二级再分成比例 */
		public Double getSecondLevelSubDivideRatio();
		/** 普通用户发起首次充值最小额度 */
		public Double getGeneralUserFirstRechargeMinAmount();
		/** 充值最小额度 */
		public Double getRechargeMinAmount();
		/** 提现最小额度 */
		public Double getWithdrawMinAmount();
	}
	
	/**
	 * 为必须属性赋值
	 */
	public TB_SystemConfig properties(MustProperties properties) {
		this.setFirstLevelDivideRatio(properties.getFirstLevelDivideRatio());
		this.setFirstLevelSubDivideRatio(properties.getFirstLevelSubDivideRatio());
		this.setSecondLevelDivideRatio(properties.getSecondLevelDivideRatio());
		this.setSecondLevelSubDivideRatio(properties.getSecondLevelSubDivideRatio());
		this.setGeneralUserFirstRechargeMinAmount(properties.getGeneralUserFirstRechargeMinAmount());
		this.setRechargeMinAmount(properties.getRechargeMinAmount());
		this.setWithdrawMinAmount(properties.getWithdrawMinAmount());
		return this;
	}
	
	/**
	 *	必须属性构造函数
	 */
	public TB_SystemConfig(MustProperties properties) {
		this.properties(properties);
	}
	
	
	/**
	 * 可选单属性赋值接口
	 */
	public static interface OptionalSingleProperties{
		/** 一级分成比例说明 */
		public String getFirstLevelDivideRatioComment();
		/** 一级再分成比例说明 */
		public String getFirstLevelSubDivideRatioComment();
		/** 二级分成比例说明 */
		public String getSecondLevelDivideRatioComment();
		/** 二级再分成比例说明 */
		public String getSecondLevelSubDivideRatioComment();
		/** 普通用户发起首次充值最小额度说明 */
		public String getGeneralUserFirstRechargeMinAmountComment();
		/** 充值最小额度说明 */
		public String getRechargeMinAmountComment();
		/** 提现最小额度说明 */
		public String getWithdrawMinAmountComment();
		/** 订单过期时间[分] */
		public Long getOrderExpireTime();
	}
	
	/**
	 * 为可选单属性赋值
	 */
	public TB_SystemConfig properties(OptionalSingleProperties properties) {
		this.setFirstLevelDivideRatioComment(properties.getFirstLevelDivideRatioComment());
		this.setFirstLevelSubDivideRatioComment(properties.getFirstLevelSubDivideRatioComment());
		this.setSecondLevelDivideRatioComment(properties.getSecondLevelDivideRatioComment());
		this.setSecondLevelSubDivideRatioComment(properties.getSecondLevelSubDivideRatioComment());
		this.setGeneralUserFirstRechargeMinAmountComment(properties.getGeneralUserFirstRechargeMinAmountComment());
		this.setRechargeMinAmountComment(properties.getRechargeMinAmountComment());
		this.setWithdrawMinAmountComment(properties.getWithdrawMinAmountComment());
		this.setOrderExpireTime(properties.getOrderExpireTime());
		return this;
	}
	
	
	
	public TB_SystemConfig(MustProperties must, OptionalSingleProperties optionalSingle) {
		this.properties(must);
		this.properties(optionalSingle);
	}
	
	/**
	 * 仅当前必须属性赋值接口
	 */
	public static interface CurrentMustProperties{
		/** 一级分成比例 */
		public Double getFirstLevelDivideRatio();
		/** 一级再分成比例 */
		public Double getFirstLevelSubDivideRatio();
		/** 二级分成比例 */
		public Double getSecondLevelDivideRatio();
		/** 二级再分成比例 */
		public Double getSecondLevelSubDivideRatio();
		/** 普通用户发起首次充值最小额度 */
		public Double getGeneralUserFirstRechargeMinAmount();
		/** 充值最小额度 */
		public Double getRechargeMinAmount();
		/** 提现最小额度 */
		public Double getWithdrawMinAmount();
	}
	
	/**
	 * 为仅当前必须属性赋值
	 */
	public TB_SystemConfig properties(CurrentMustProperties properties) {
		this.setFirstLevelDivideRatio(properties.getFirstLevelDivideRatio());
		this.setFirstLevelSubDivideRatio(properties.getFirstLevelSubDivideRatio());
		this.setSecondLevelDivideRatio(properties.getSecondLevelDivideRatio());
		this.setSecondLevelSubDivideRatio(properties.getSecondLevelSubDivideRatio());
		this.setGeneralUserFirstRechargeMinAmount(properties.getGeneralUserFirstRechargeMinAmount());
		this.setRechargeMinAmount(properties.getRechargeMinAmount());
		this.setWithdrawMinAmount(properties.getWithdrawMinAmount());
		return this;
	}
	
	/**
	 * 仅当前可选单属性赋值接口
	 */
	public static interface CurrentOptionalSingleProperties{
		/** 一级分成比例说明 */
		public String getFirstLevelDivideRatioComment();
		/** 一级再分成比例说明 */
		public String getFirstLevelSubDivideRatioComment();
		/** 二级分成比例说明 */
		public String getSecondLevelDivideRatioComment();
		/** 二级再分成比例说明 */
		public String getSecondLevelSubDivideRatioComment();
		/** 普通用户发起首次充值最小额度说明 */
		public String getGeneralUserFirstRechargeMinAmountComment();
		/** 充值最小额度说明 */
		public String getRechargeMinAmountComment();
		/** 提现最小额度说明 */
		public String getWithdrawMinAmountComment();
		/** 订单过期时间[分] */
		public Long getOrderExpireTime();
	}
	
	/**
	 * 为仅当前可选单属性赋值
	 */
	public TB_SystemConfig properties(CurrentOptionalSingleProperties properties) {
		this.setFirstLevelDivideRatioComment(properties.getFirstLevelDivideRatioComment());
		this.setFirstLevelSubDivideRatioComment(properties.getFirstLevelSubDivideRatioComment());
		this.setSecondLevelDivideRatioComment(properties.getSecondLevelDivideRatioComment());
		this.setSecondLevelSubDivideRatioComment(properties.getSecondLevelSubDivideRatioComment());
		this.setGeneralUserFirstRechargeMinAmountComment(properties.getGeneralUserFirstRechargeMinAmountComment());
		this.setRechargeMinAmountComment(properties.getRechargeMinAmountComment());
		this.setWithdrawMinAmountComment(properties.getWithdrawMinAmountComment());
		this.setOrderExpireTime(properties.getOrderExpireTime());
		return this;
	}
	
	public TB_SystemConfig(
		@lombok.NonNull com.lianjing.sh.model.uml.model.data.TBSuper_BaseIDAndTimeAndOrderValue bean,
		CurrentMustProperties mustProperties,
		CurrentOptionalSingleProperties optionalProperties
	) {
		this(bean);
		this.properties(mustProperties);
		this.properties(optionalProperties);
	}
	
	public TB_SystemConfig(
		@lombok.NonNull com.lianjing.sh.model.uml.model.data.TBSuper_BaseIDAndTimeAndOrderValue bean
	) {
		update(bean);
	}
	
	public TB_SystemConfig update(com.lianjing.sh.model.uml.model.data.TBSuper_BaseIDAndTimeAndOrderValue bean){
		this.setId(bean.getId());
		this.setCreateTime(bean.getCreateTime());
		this.setModifyTime(bean.getModifyTime());
		this.setOrderValue(bean.getOrderValue());
		return this;
	}
	
	
	/**
	 * 更新属性内部类
	 */
	public abstract class UpdateProperties {
	
		public UpdateProperties() throws Exception {
			Integer orderValue = getOrderValue(TB_SystemConfig.this);
			if(isOverride_getOrderValue){
				TB_SystemConfig.this.setOrderValue(orderValue);
			}
	
			Double firstLevelDivideRatio = getFirstLevelDivideRatio(TB_SystemConfig.this);
			if(isOverride_getFirstLevelDivideRatio){
				TB_SystemConfig.this.setFirstLevelDivideRatio(firstLevelDivideRatio);
			}
	
			String firstLevelDivideRatioComment = getFirstLevelDivideRatioComment(TB_SystemConfig.this);
			if(isOverride_getFirstLevelDivideRatioComment){
				TB_SystemConfig.this.setFirstLevelDivideRatioComment(firstLevelDivideRatioComment);
			}
	
			Double firstLevelSubDivideRatio = getFirstLevelSubDivideRatio(TB_SystemConfig.this);
			if(isOverride_getFirstLevelSubDivideRatio){
				TB_SystemConfig.this.setFirstLevelSubDivideRatio(firstLevelSubDivideRatio);
			}
	
			String firstLevelSubDivideRatioComment = getFirstLevelSubDivideRatioComment(TB_SystemConfig.this);
			if(isOverride_getFirstLevelSubDivideRatioComment){
				TB_SystemConfig.this.setFirstLevelSubDivideRatioComment(firstLevelSubDivideRatioComment);
			}
	
			Double secondLevelDivideRatio = getSecondLevelDivideRatio(TB_SystemConfig.this);
			if(isOverride_getSecondLevelDivideRatio){
				TB_SystemConfig.this.setSecondLevelDivideRatio(secondLevelDivideRatio);
			}
	
			String secondLevelDivideRatioComment = getSecondLevelDivideRatioComment(TB_SystemConfig.this);
			if(isOverride_getSecondLevelDivideRatioComment){
				TB_SystemConfig.this.setSecondLevelDivideRatioComment(secondLevelDivideRatioComment);
			}
	
			Double secondLevelSubDivideRatio = getSecondLevelSubDivideRatio(TB_SystemConfig.this);
			if(isOverride_getSecondLevelSubDivideRatio){
				TB_SystemConfig.this.setSecondLevelSubDivideRatio(secondLevelSubDivideRatio);
			}
	
			String secondLevelSubDivideRatioComment = getSecondLevelSubDivideRatioComment(TB_SystemConfig.this);
			if(isOverride_getSecondLevelSubDivideRatioComment){
				TB_SystemConfig.this.setSecondLevelSubDivideRatioComment(secondLevelSubDivideRatioComment);
			}
	
			Double generalUserFirstRechargeMinAmount = getGeneralUserFirstRechargeMinAmount(TB_SystemConfig.this);
			if(isOverride_getGeneralUserFirstRechargeMinAmount){
				TB_SystemConfig.this.setGeneralUserFirstRechargeMinAmount(generalUserFirstRechargeMinAmount);
			}
	
			String generalUserFirstRechargeMinAmountComment = getGeneralUserFirstRechargeMinAmountComment(TB_SystemConfig.this);
			if(isOverride_getGeneralUserFirstRechargeMinAmountComment){
				TB_SystemConfig.this.setGeneralUserFirstRechargeMinAmountComment(generalUserFirstRechargeMinAmountComment);
			}
	
			Double rechargeMinAmount = getRechargeMinAmount(TB_SystemConfig.this);
			if(isOverride_getRechargeMinAmount){
				TB_SystemConfig.this.setRechargeMinAmount(rechargeMinAmount);
			}
	
			String rechargeMinAmountComment = getRechargeMinAmountComment(TB_SystemConfig.this);
			if(isOverride_getRechargeMinAmountComment){
				TB_SystemConfig.this.setRechargeMinAmountComment(rechargeMinAmountComment);
			}
	
			Double withdrawMinAmount = getWithdrawMinAmount(TB_SystemConfig.this);
			if(isOverride_getWithdrawMinAmount){
				TB_SystemConfig.this.setWithdrawMinAmount(withdrawMinAmount);
			}
	
			String withdrawMinAmountComment = getWithdrawMinAmountComment(TB_SystemConfig.this);
			if(isOverride_getWithdrawMinAmountComment){
				TB_SystemConfig.this.setWithdrawMinAmountComment(withdrawMinAmountComment);
			}
	
			Long orderExpireTime = getOrderExpireTime(TB_SystemConfig.this);
			if(isOverride_getOrderExpireTime){
				TB_SystemConfig.this.setOrderExpireTime(orderExpireTime);
			}
		}
	
		public TB_SystemConfig up(){
			return TB_SystemConfig.this;
		}
	
		/** 排序值 */
		private boolean isOverride_getOrderValue = true;
		public Integer getOrderValue(TB_SystemConfig it) throws Exception { 
			isOverride_getOrderValue = false; 
			return null;
		}
		/** 一级分成比例 */
		private boolean isOverride_getFirstLevelDivideRatio = true;
		public Double getFirstLevelDivideRatio(TB_SystemConfig it) throws Exception { 
			isOverride_getFirstLevelDivideRatio = false; 
			return null;
		}
		/** 一级分成比例说明 */
		private boolean isOverride_getFirstLevelDivideRatioComment = true;
		public String getFirstLevelDivideRatioComment(TB_SystemConfig it) throws Exception { 
			isOverride_getFirstLevelDivideRatioComment = false; 
			return null;
		}
		/** 一级再分成比例 */
		private boolean isOverride_getFirstLevelSubDivideRatio = true;
		public Double getFirstLevelSubDivideRatio(TB_SystemConfig it) throws Exception { 
			isOverride_getFirstLevelSubDivideRatio = false; 
			return null;
		}
		/** 一级再分成比例说明 */
		private boolean isOverride_getFirstLevelSubDivideRatioComment = true;
		public String getFirstLevelSubDivideRatioComment(TB_SystemConfig it) throws Exception { 
			isOverride_getFirstLevelSubDivideRatioComment = false; 
			return null;
		}
		/** 二级分成比例 */
		private boolean isOverride_getSecondLevelDivideRatio = true;
		public Double getSecondLevelDivideRatio(TB_SystemConfig it) throws Exception { 
			isOverride_getSecondLevelDivideRatio = false; 
			return null;
		}
		/** 二级分成比例说明 */
		private boolean isOverride_getSecondLevelDivideRatioComment = true;
		public String getSecondLevelDivideRatioComment(TB_SystemConfig it) throws Exception { 
			isOverride_getSecondLevelDivideRatioComment = false; 
			return null;
		}
		/** 二级再分成比例 */
		private boolean isOverride_getSecondLevelSubDivideRatio = true;
		public Double getSecondLevelSubDivideRatio(TB_SystemConfig it) throws Exception { 
			isOverride_getSecondLevelSubDivideRatio = false; 
			return null;
		}
		/** 二级再分成比例说明 */
		private boolean isOverride_getSecondLevelSubDivideRatioComment = true;
		public String getSecondLevelSubDivideRatioComment(TB_SystemConfig it) throws Exception { 
			isOverride_getSecondLevelSubDivideRatioComment = false; 
			return null;
		}
		/** 普通用户发起首次充值最小额度 */
		private boolean isOverride_getGeneralUserFirstRechargeMinAmount = true;
		public Double getGeneralUserFirstRechargeMinAmount(TB_SystemConfig it) throws Exception { 
			isOverride_getGeneralUserFirstRechargeMinAmount = false; 
			return null;
		}
		/** 普通用户发起首次充值最小额度说明 */
		private boolean isOverride_getGeneralUserFirstRechargeMinAmountComment = true;
		public String getGeneralUserFirstRechargeMinAmountComment(TB_SystemConfig it) throws Exception { 
			isOverride_getGeneralUserFirstRechargeMinAmountComment = false; 
			return null;
		}
		/** 充值最小额度 */
		private boolean isOverride_getRechargeMinAmount = true;
		public Double getRechargeMinAmount(TB_SystemConfig it) throws Exception { 
			isOverride_getRechargeMinAmount = false; 
			return null;
		}
		/** 充值最小额度说明 */
		private boolean isOverride_getRechargeMinAmountComment = true;
		public String getRechargeMinAmountComment(TB_SystemConfig it) throws Exception { 
			isOverride_getRechargeMinAmountComment = false; 
			return null;
		}
		/** 提现最小额度 */
		private boolean isOverride_getWithdrawMinAmount = true;
		public Double getWithdrawMinAmount(TB_SystemConfig it) throws Exception { 
			isOverride_getWithdrawMinAmount = false; 
			return null;
		}
		/** 提现最小额度说明 */
		private boolean isOverride_getWithdrawMinAmountComment = true;
		public String getWithdrawMinAmountComment(TB_SystemConfig it) throws Exception { 
			isOverride_getWithdrawMinAmountComment = false; 
			return null;
		}
		/** 订单过期时间[分] */
		private boolean isOverride_getOrderExpireTime = true;
		public Long getOrderExpireTime(TB_SystemConfig it) throws Exception { 
			isOverride_getOrderExpireTime = false; 
			return null;
		}
	
	}
	
	
	/**
	 * 构造函数
	 */
	public TB_SystemConfig() {
	}
	
	public TB_SystemConfig(
		@lombok.NonNull Long id
	) {
		this.setId(id);
	}
	
	public TB_SystemConfig(
		@lombok.NonNull TB_SystemConfig bean
	) {
		this.setId(bean.getId());
		this.setCreateTime(bean.getCreateTime());
		this.setModifyTime(bean.getModifyTime());
		this.setOrderValue(bean.getOrderValue());
		this.setFirstLevelDivideRatio(bean.getFirstLevelDivideRatio());
		this.setFirstLevelDivideRatioComment(bean.getFirstLevelDivideRatioComment());
		this.setFirstLevelSubDivideRatio(bean.getFirstLevelSubDivideRatio());
		this.setFirstLevelSubDivideRatioComment(bean.getFirstLevelSubDivideRatioComment());
		this.setSecondLevelDivideRatio(bean.getSecondLevelDivideRatio());
		this.setSecondLevelDivideRatioComment(bean.getSecondLevelDivideRatioComment());
		this.setSecondLevelSubDivideRatio(bean.getSecondLevelSubDivideRatio());
		this.setSecondLevelSubDivideRatioComment(bean.getSecondLevelSubDivideRatioComment());
		this.setGeneralUserFirstRechargeMinAmount(bean.getGeneralUserFirstRechargeMinAmount());
		this.setGeneralUserFirstRechargeMinAmountComment(bean.getGeneralUserFirstRechargeMinAmountComment());
		this.setRechargeMinAmount(bean.getRechargeMinAmount());
		this.setRechargeMinAmountComment(bean.getRechargeMinAmountComment());
		this.setWithdrawMinAmount(bean.getWithdrawMinAmount());
		this.setWithdrawMinAmountComment(bean.getWithdrawMinAmountComment());
		this.setOrderExpireTime(bean.getOrderExpireTime());
	}
	
	

	


	/**
	 * 属性
	 */
	@com.lianjing.sh.model.common.annotation.Comment("一级分成比例")
	@com.lianjing.sh.processing.info.annotation.InfoComment("一级分成比例")
	@javax.persistence.Column(name="firstLevelDivideRatio", nullable=false)
	private Double firstLevelDivideRatio;

	@com.lianjing.sh.model.common.annotation.Comment("一级分成比例说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("一级分成比例说明")
	@javax.persistence.Column(name="firstLevelDivideRatioComment", length=500)
	private String firstLevelDivideRatioComment;

	@com.lianjing.sh.model.common.annotation.Comment("一级再分成比例")
	@com.lianjing.sh.processing.info.annotation.InfoComment("一级再分成比例")
	@javax.persistence.Column(name="firstLevelSubDivideRatio", nullable=false)
	private Double firstLevelSubDivideRatio;

	@com.lianjing.sh.model.common.annotation.Comment("一级再分成比例说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("一级再分成比例说明")
	@javax.persistence.Column(name="firstLevelSubDivideRatioComment", length=500)
	private String firstLevelSubDivideRatioComment;

	@com.lianjing.sh.model.common.annotation.Comment("二级分成比例")
	@com.lianjing.sh.processing.info.annotation.InfoComment("二级分成比例")
	@javax.persistence.Column(name="secondLevelDivideRatio", nullable=false)
	private Double secondLevelDivideRatio;

	@com.lianjing.sh.model.common.annotation.Comment("二级分成比例说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("二级分成比例说明")
	@javax.persistence.Column(name="secondLevelDivideRatioComment", length=500)
	private String secondLevelDivideRatioComment;

	@com.lianjing.sh.model.common.annotation.Comment("二级再分成比例")
	@com.lianjing.sh.processing.info.annotation.InfoComment("二级再分成比例")
	@javax.persistence.Column(name="secondLevelSubDivideRatio", nullable=false)
	private Double secondLevelSubDivideRatio;

	@com.lianjing.sh.model.common.annotation.Comment("二级再分成比例说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("二级再分成比例说明")
	@javax.persistence.Column(name="secondLevelSubDivideRatioComment", length=500)
	private String secondLevelSubDivideRatioComment;

	@com.lianjing.sh.model.common.annotation.Comment("普通用户发起首次充值最小额度")
	@com.lianjing.sh.processing.info.annotation.InfoComment("普通用户发起首次充值最小额度")
	@javax.persistence.Column(name="generalUserFirstRechargeMinAmount", nullable=false)
	private Double generalUserFirstRechargeMinAmount;

	@com.lianjing.sh.model.common.annotation.Comment("普通用户发起首次充值最小额度说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("普通用户发起首次充值最小额度说明")
	@javax.persistence.Column(name="generalUserFirstRechargeMinAmountComment", length=500)
	private String generalUserFirstRechargeMinAmountComment;

	@com.lianjing.sh.model.common.annotation.Comment("充值最小额度")
	@com.lianjing.sh.processing.info.annotation.InfoComment("充值最小额度")
	@javax.persistence.Column(name="rechargeMinAmount", nullable=false)
	private Double rechargeMinAmount;

	@com.lianjing.sh.model.common.annotation.Comment("充值最小额度说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("充值最小额度说明")
	@javax.persistence.Column(name="rechargeMinAmountComment", length=500)
	private String rechargeMinAmountComment;

	@com.lianjing.sh.model.common.annotation.Comment("提现最小额度")
	@com.lianjing.sh.processing.info.annotation.InfoComment("提现最小额度")
	@javax.persistence.Column(name="withdrawMinAmount", nullable=false)
	private Double withdrawMinAmount;

	@com.lianjing.sh.model.common.annotation.Comment("提现最小额度说明")
	@com.lianjing.sh.processing.info.annotation.InfoComment("提现最小额度说明")
	@javax.persistence.Column(name="withdrawMinAmountComment", length=500)
	private String withdrawMinAmountComment;

	@com.lianjing.sh.model.common.annotation.Comment("订单过期时间[分]")
	@com.lianjing.sh.processing.info.annotation.InfoComment("订单过期时间[分]")
	@javax.persistence.Column(name="orderExpireTime")
	private Long orderExpireTime;

	/** get[一级分成比例] */
	public Double getFirstLevelDivideRatio() {
		return this.firstLevelDivideRatio;
	}

	/** get[一级分成比例说明] */
	public String getFirstLevelDivideRatioComment() {
		return this.firstLevelDivideRatioComment;
	}

	/** get[一级再分成比例] */
	public Double getFirstLevelSubDivideRatio() {
		return this.firstLevelSubDivideRatio;
	}

	/** get[一级再分成比例说明] */
	public String getFirstLevelSubDivideRatioComment() {
		return this.firstLevelSubDivideRatioComment;
	}

	/** get[二级分成比例] */
	public Double getSecondLevelDivideRatio() {
		return this.secondLevelDivideRatio;
	}

	/** get[二级分成比例说明] */
	public String getSecondLevelDivideRatioComment() {
		return this.secondLevelDivideRatioComment;
	}

	/** get[二级再分成比例] */
	public Double getSecondLevelSubDivideRatio() {
		return this.secondLevelSubDivideRatio;
	}

	/** get[二级再分成比例说明] */
	public String getSecondLevelSubDivideRatioComment() {
		return this.secondLevelSubDivideRatioComment;
	}

	/** get[普通用户发起首次充值最小额度] */
	public Double getGeneralUserFirstRechargeMinAmount() {
		return this.generalUserFirstRechargeMinAmount;
	}

	/** get[普通用户发起首次充值最小额度说明] */
	public String getGeneralUserFirstRechargeMinAmountComment() {
		return this.generalUserFirstRechargeMinAmountComment;
	}

	/** get[充值最小额度] */
	public Double getRechargeMinAmount() {
		return this.rechargeMinAmount;
	}

	/** get[充值最小额度说明] */
	public String getRechargeMinAmountComment() {
		return this.rechargeMinAmountComment;
	}

	/** get[提现最小额度] */
	public Double getWithdrawMinAmount() {
		return this.withdrawMinAmount;
	}

	/** get[提现最小额度说明] */
	public String getWithdrawMinAmountComment() {
		return this.withdrawMinAmountComment;
	}

	/** get[订单过期时间[分]] */
	public Long getOrderExpireTime() {
		return this.orderExpireTime;
	}

	/** set[一级分成比例] */
	public void setFirstLevelDivideRatio(Double firstLevelDivideRatio) {
		this.firstLevelDivideRatio = firstLevelDivideRatio;
	}

	/** set[一级分成比例说明] */
	public void setFirstLevelDivideRatioComment(String firstLevelDivideRatioComment) {
		this.firstLevelDivideRatioComment = firstLevelDivideRatioComment;
	}

	/** set[一级再分成比例] */
	public void setFirstLevelSubDivideRatio(Double firstLevelSubDivideRatio) {
		this.firstLevelSubDivideRatio = firstLevelSubDivideRatio;
	}

	/** set[一级再分成比例说明] */
	public void setFirstLevelSubDivideRatioComment(String firstLevelSubDivideRatioComment) {
		this.firstLevelSubDivideRatioComment = firstLevelSubDivideRatioComment;
	}

	/** set[二级分成比例] */
	public void setSecondLevelDivideRatio(Double secondLevelDivideRatio) {
		this.secondLevelDivideRatio = secondLevelDivideRatio;
	}

	/** set[二级分成比例说明] */
	public void setSecondLevelDivideRatioComment(String secondLevelDivideRatioComment) {
		this.secondLevelDivideRatioComment = secondLevelDivideRatioComment;
	}

	/** set[二级再分成比例] */
	public void setSecondLevelSubDivideRatio(Double secondLevelSubDivideRatio) {
		this.secondLevelSubDivideRatio = secondLevelSubDivideRatio;
	}

	/** set[二级再分成比例说明] */
	public void setSecondLevelSubDivideRatioComment(String secondLevelSubDivideRatioComment) {
		this.secondLevelSubDivideRatioComment = secondLevelSubDivideRatioComment;
	}

	/** set[普通用户发起首次充值最小额度] */
	public void setGeneralUserFirstRechargeMinAmount(Double generalUserFirstRechargeMinAmount) {
		this.generalUserFirstRechargeMinAmount = generalUserFirstRechargeMinAmount;
	}

	/** set[普通用户发起首次充值最小额度说明] */
	public void setGeneralUserFirstRechargeMinAmountComment(String generalUserFirstRechargeMinAmountComment) {
		this.generalUserFirstRechargeMinAmountComment = generalUserFirstRechargeMinAmountComment;
	}

	/** set[充值最小额度] */
	public void setRechargeMinAmount(Double rechargeMinAmount) {
		this.rechargeMinAmount = rechargeMinAmount;
	}

	/** set[充值最小额度说明] */
	public void setRechargeMinAmountComment(String rechargeMinAmountComment) {
		this.rechargeMinAmountComment = rechargeMinAmountComment;
	}

	/** set[提现最小额度] */
	public void setWithdrawMinAmount(Double withdrawMinAmount) {
		this.withdrawMinAmount = withdrawMinAmount;
	}

	/** set[提现最小额度说明] */
	public void setWithdrawMinAmountComment(String withdrawMinAmountComment) {
		this.withdrawMinAmountComment = withdrawMinAmountComment;
	}

	/** set[订单过期时间[分]] */
	public void setOrderExpireTime(Long orderExpireTime) {
		this.orderExpireTime = orderExpireTime;
	}


	
	
	

	
	
	

	/**
	 * 复写 hashCode
	 */
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		return prime * result + ((this.getId() == null) ? 0 : this.getId().hashCode());
	}
	
	/**
	 * 复写 equals
	 */
	@Override
	public boolean equals(Object obj) {
		if (this == obj){
			return true;
		}
		if (obj == null){
			return false;
		}
		if (getClass() != obj.getClass()){
			return false;
		}
		TB_SystemConfig other = (TB_SystemConfig) obj;
		if (this.getId() == null) {
			return false;
		} else if (!this.getId().equals(other.getId())){
			return false;
		}
		return true;
	}
	

	/**
	 * 用来覆盖toString()的输出
	 */
	@javax.persistence.Transient
	private String toString;
	
	public void setToString(String toString) {
		this.toString = toString;
	}
	
	/**
	 * 复写 toString
	 */
	@Override
	public String toString() {
		if(null != this.toString){
			return this.toString;
		}
		return super.toString();
	}	

	@javax.persistence.PrePersist
	public void prePersist() {
		this.setCreateTime(new java.util.Date());
		this.setModifyTime(new java.util.Date());
	}
	
	@javax.persistence.PreUpdate
	public void preUpdate() {
		this.setModifyTime(new java.util.Date());
	}



}
